﻿Option Explicit On
Option Strict On

Imports System.Data
Imports System.Data.OleDb

'Documentación XML
''' <summary>
''' Esta clase gestionará la conexión con base de datos 
''' de la creación y restauración de la copia de seguridad.
''' </summary>
''' <author> Jerón Fernández Caballero Rico</author>
''' <author> Daniel Morato Baudi</author>

Public Class CopiaSeguridad

    'Métodos
    ''' <param name="TablaCopiar">(String) Tabla sobre la cual haremos la copia de seguridad.</param>
    ''' <returns>(OleDbDataReader) Devuelve un objeto DataReader con los datos leídos.</returns>
    Public Function ConsultarBD(ByVal TablaCopiar As String) As OleDbDataReader

        Dim MiBD As New BaseDatos
        Dim DatosLeidos As OleDbDataReader

        DatosLeidos = MiBD.Leer("SELECT * FROM " & TablaCopiar)
        Return DatosLeidos

    End Function

    ''' <param name="TablaCopiar">(String) Tabla sobre la cual haremos la copia de seguridad.</param>
    Public Sub BorrarDeBD(ByVal TablaCopiar As String)

        Dim MiBD As New BaseDatos
        MiBD.Borrar("DELETE * FROM " & TablaCopiar)

    End Sub

    ''' <param name="TablaCopiar">(String) Tabla sobre la cual haremos la copia de seguridad.</param>
    Public Sub InsertarEnBD(ByVal TablaCopiar As String, ByVal Linea As String)

        Dim MiBD As New BaseDatos
        Dim Lectura() As String
        Dim Insercion As String

        Lectura = Linea.Split(";"c)
        Insercion = "INSERT INTO " & TablaCopiar & " VALUES ('" & Lectura(0)

        For i As Integer = 1 To Lectura.Length - 1 Step 1
            Insercion &= "', '" & Lectura(i)
        Next

        Insercion &= "')"
        MiBD.Insertar(Insercion)

    End Sub

End Class